1. Field of the Invention
The present invention relates generally to communications between computers. More particularly, the present invention relates to point-to-point interconnect communications technologies for use in an arbitrarily assembled computer network.
2. Description of Related Art
The evolution of computer technology has seen the progression from huge room-sized collections of tubes to desk-top and even hand-held size machines supported by millions of tiny transistors. Throughout much of this evolution the focus has been on increasing the power and speed of single autonomous machines. This has led to today's stand-alone machines which have awesome computational and data processing power.
Relatively recent efforts in the computer field have been directed toward the sharing of data from more than one computer station. Other efforts have been directed toward the use of multiple processors in a single computer to enhance the speed and power of single machines.
Current research has been directed toward combining the above efforts to yield powerful computer systems composed of a plurality of otherwise stand-alone machines. For some time, high speed local area networks have been used to link many computers to facilitate data transfer between multiple autonomous units. Modern offices use such networks to greatly increase the movement of information between users without increasing the use of paper. Similarly, such networks provide alternative communication mechanisms between the network's users in the form of electronic mail and the provision of public forums for common discussion.
A network utilizing an efficient communications protocol may be used for both data sharing and for implementing the concept of a Distributed Shared Memory System (DSM). Unlike a local area network which is motivated by the need to share data, a DSM is motivated by combining multiple processors into one large system with the potential for using the aggregate resources for any given application. A number of different methods have been explored for sharing computer resources in a given network collection.
Whether a network is assembled purely to serve a network function of sharing data or the more complex case of combining computing resources, it is essential that information from any one system in the network be able to be conveyed to any other system in the network. There have been many protocols developed for different implementations many utilizing a centralized switch. Most have required a priori defined locations and addresses for each member of the network, or nodes. (Note that a given system in a network may in some cases house more than one node.) This predefined nature of the network impedes the ease with which additional elements may be added or existing nodes removed.
Other problems to contend with include the need to prioritize certain types of data transfers. Isochronous data transfers for real-time information such as video and sound may not be unduly delayed and must be delivered in sequential order. Other information such as routine data file information may be conveyed piecemeal with errors corrected out of sequence. These problems are further complicated in networks utilizing a common bus which must be arbitrated for, which arbitration may become overly burdensome with an increased number of nodes in the system. Finally, reconciling the differing needs of local area network communications and DSM communication into a single protocol has heretofore provided a daunting task.
In his Ph.D. dissertation, Communications Architecture for Multi-Processor Net works, at Carnegie Mellon University, Andreas G. Nowatzyk, one of the inventors of the present invention describes a theoretical implementation of a distributed shared memory system. That dissertation is incorporated herein by references.